import threading
import time

'''
，Event是一种简单的线程间通信机制，它允许一个线程通知其他线程某个事件已经发生。
'''

# Event示例
event = threading.Event()

def waiter():
    print("等待线程: 等待事件被设置")
    event.wait()  # 阻塞直到事件被设置
    print("等待线程: 事件已被触发，继续执行")

def setter():
    print("设置线程: 正在处理一些工作")
    time.sleep(3)  # 模拟工作
    print("设置线程: 工作完成，设置事件")
    event.set()  # 设置事件，唤醒所有等待的线程

# 创建并启动线程
t1 = threading.Thread(target=waiter)
t2 = threading.Thread(target=setter)

t1.start()
t2.start()

t1.join()
t2.join()

print("Event示例完成")
